package main

import (
	"fmt"
	"strings"
)

func main() {

	//Map 返回字符串 s 的副本，其中的所有字符都根据映射函数进行了修改。 如果映射返回负值，则从字符串中删除该字符而不进行替换
	fmt.Println(strings.Map(func(c rune) rune {
		switch {
		case c >= 'A' && c <= 'Z':
			return 'A' + (c-'A'+13)%26
		case c >= 'a' && c <= 'z':
			return 'a' + (c-'a'+13)%26
		}

		return c
	}, "'Twas brillig and the slithy gopher..."))
}
